Aggregate(TSource, TAccumulate, TResult) Method (ParallelQuery(TSource), TAccumulate, Func(TAccumulate, TSource, TAccumulate), Func(TAccumulate, TResult))

Task Parallel System.Threading

Applies in parallel an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.

Namespace:  System.Linq
Assembly:  System.Threading (in System.Threading.dll)

Syntax

Visual Basic (Declaration)
Public Shared Function Aggregate(Of TSource, TAccumulate, TResult) ( _
	source As ParallelQuery(Of TSource), _
	seed As TAccumulate, _
	func As Func(Of TAccumulate, TSource, TAccumulate), _
	resultSelector As Func(Of TAccumulate, TResult) _
) As TResult
C#
public static TResult Aggregate<TSource, TAccumulate, TResult>(
	ParallelQuery<TSource> source,
	TAccumulate seed,
	Func<TAccumulate, TSource, TAccumulate> func,
	Func<TAccumulate, TResult> resultSelector
)

Parameters

source
Type: System.Linq..::.ParallelQuery<(Of <(TSource>)>)
A sequence to aggregate over.
seed
Type: TAccumulate
The initial accumulator value.
func
Type: System..::.Func<(Of <(TAccumulate, TSource, TAccumulate>)>)
An accumulator function to be invoked on each element.
resultSelector
Type: System..::.Func<(Of <(TAccumulate, TResult>)>)
A function to transform the final accumulator value into the result value.

Type Parameters

TSource
The type of the elements of source.
TAccumulate
The type of the accumulator value.
TResult
The type of the resulting value.

Return Value

The transformed final accumulator value.

Exceptions

ExceptionCondition
System..::.ArgumentNullException source or func or resultSelector is a null reference (Nothing in Visual Basic).
System..::.AggregateException One or more exceptions occurred during the evaluation of the query.
System..::.OperationCanceledException The query was canceled.

See Also